from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能


class 技能0(主动技能):
    名称 = '罪业加身'
    所在等级 = 10
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [30, 252]
    data0 = [int(i) for i in [0, 2627, 2895, 3162, 3428, 3693, 3960, 4228, 4494, 4762, 5027, 5294, 5560, 5828, 6093, 6360, 6625, 6893, 7162, 7427, 7695, 7961, 8226, 8496, 8761, 9027, 9293, 9561, 9827, 10094, 10361, 10626, 10892, 11160, 11427, 11693, 11961, 12226, 12493, 12760, 13028, 13295, 13560, 13827, 14094, 14361, 14626, 14894, 15159, 15427, 15695, 15959, 16226, 16492, 16760, 17026, 17294, 17559, 17825, 18091, 18359, 18626, 18893, 19160, 19426, 19694, 19959, 20227, 20493, 20758, 21027]]
    hit0 = 1
    CD = 6.0
    TP成长 = 0.10
    TP上限 = 7


class 技能1(主动技能):
    名称 = '双重切割'
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [12, 120]
    data0 = [int(i) for i in [0, 1389, 1529, 1670, 1809, 1952, 2093, 2233, 2375, 2514, 2658, 2797, 2938, 3078, 3219, 3359, 3501, 3641, 3783, 3924, 4065, 4204, 4347, 4486, 4629, 4770, 4909, 5051, 5193, 5334, 5474, 5615, 5754, 5897, 6037, 6178, 6317, 6460, 6600, 6742, 6882, 7023, 7164, 7304, 7445, 7585, 7728, 7870, 8011, 8149, 8290, 8433, 8574, 8714, 8854, 8994, 9138, 9278, 9419, 9558, 9699, 9840, 9981, 10123, 10263, 10406, 10545, 10686, 10826, 10968, 11109]]
    hit0 = 1
    data1 = [int(i) for i in [0, 2083, 2293, 2504, 2718, 2927, 3138, 3352, 3562, 3773, 3984, 4195, 4407, 4619, 4829, 5040, 5254, 5463, 5675, 5888, 6097, 6308, 6521, 6732, 6943, 7154, 7365, 7578, 7790, 7999, 8210, 8421, 8633, 8845, 9053, 9267, 9479, 9689, 9903, 10112, 10323, 10535, 10748, 10957, 11169, 11381, 11591, 11804, 12014, 12224, 12437, 12649, 12859, 13070, 13283, 13493, 13706, 13918, 14127, 14339, 14551, 14760, 14974, 15185, 15394, 15609, 15819, 16029, 16241, 16453, 16663]]
    hit1 = 1
    CD = 6.0
    TP成长 = 0.1
    TP上限 = 7


class 技能2(被动技能):
    名称 = '负罪者镰刀精通'
    所在等级 = 15
    等级上限 = 30
    基础等级 = 20

    def 魔法攻击力倍率(self, 武器类型):
        if self.等级 <= 20:
            return round(1.05 + 0.01 * self.等级, 5)
        else:
            return round(0.85 + 0.02 * self.等级, 5)


class 技能3(被动技能):
    名称 = '罪业诱惑'
    所在等级 = 15
    等级上限 = 20
    基础等级 = 10

    def 加成倍率(self, 武器类型):
        if self.等级 <= 10:
            return round(1.00 + 0.01 * self.等级, 5)
        else:
            return round(0.90 + 0.02 * self.等级, 5)


class 技能4(主动技能):
    名称 = '断头台'
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [65, 616]
    data0 = [int(i) for i in [0, 2221, 2446, 2671, 2897, 3120, 3346, 3573, 3798, 4022, 4249, 4473, 4699, 4924, 5149, 5374, 5601, 5825, 6051, 6277, 6502, 6726, 6952, 7177, 7402, 7629, 7853, 8079, 8304, 8529, 8754, 8981, 9205, 9431, 9657, 9882, 10106, 10331, 10557, 10782, 11008, 11233, 11459, 11684, 11909, 12134, 12360, 12585, 12810, 13036, 13262, 13485, 13711, 13937, 14161, 14388, 14613, 14838, 15064, 15288, 15513, 15740, 15965, 16189, 16416, 16641, 16866, 17091, 17317, 17541, 17768]]
    hit0 = 1
    data1 = [int(i) for i in [0, 3414, 3761, 4109, 4454, 4801, 5147, 5494, 5841, 6188, 6533, 6881, 7227, 7573, 7919, 8266, 8613, 8960, 9305, 9652, 9999, 10345, 10692, 11039, 11384, 11732, 12078, 12424, 12770, 13119, 13464, 13811, 14157, 14502, 14850, 15195, 15543, 15889, 16236, 16582, 16929, 17274, 17623, 17969, 18315, 18661, 19009, 19354, 19701, 20048, 20394, 20741, 21088, 21433, 21780, 22125, 22474, 22820, 23166, 23512, 23860, 24205, 24552, 24899, 25246, 25592, 25939, 26284, 26632, 26979, 27325]]
    hit1 = 1
    CD = 8.0
    TP成长 = 0.10
    TP上限 = 7


class 技能5(主动技能):
    名称 = '欲望之手'
    备注 = '2层'
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [65, 616]
    data0 = [int(i) for i in [0, 2130, 2345, 2561, 2778, 2992, 3209, 3426, 3641, 3858, 4075, 4290, 4506, 4722, 4939, 5155, 5371, 5587, 5804, 6020, 6235, 6451, 6667, 6884, 7099, 7316, 7531, 7748, 7966, 8180, 8397, 8614, 8830, 9045, 9259, 9476, 9692, 9910, 10125, 10341, 10557, 10775, 10991, 11205, 11421, 11638, 11855, 12071, 12287, 12501, 12719, 12936, 13149, 13366, 13582, 13799, 14016, 14231, 14447, 14665, 14881, 15097, 15310, 15526, 15744, 15960, 16175, 16391, 16609, 16826, 17041]]
    hit0 = 1
    data1 = [int(i) for i in [0, 3368, 3709, 4051, 4393, 4734, 5076, 5418, 5759, 6102, 6443, 6786, 7125, 7469, 7811, 8153, 8493, 8835, 9177, 9521, 9859, 10203, 10544, 10886, 11228, 11569, 11912, 12253, 12595, 12936, 13277, 13620, 13961, 14305, 14643, 14987, 15329, 15671, 16011, 16353, 16696, 17039, 17378, 17721, 18060, 18403, 18744, 19086, 19427, 19770, 20112, 20453, 20794, 21137, 21478, 21822, 22161, 22504, 22846, 23186, 23528, 23870, 24213, 24555, 24895, 25238, 25578, 25921, 26264, 26605, 26946]]
    hit1 = 1
    CD = 8.0
    TP成长 = 0.10
    TP上限 = 7


class 技能6(被动技能):
    名称 = '七宗罪'
    所在等级 = 20
    等级上限 = 20
    基础等级 = 20
    关联技能 = ['欲望之手', '傲慢之堕', '怠惰之息', '贪婪之刺', '愤怒之袭', '嫉妒之吻', '暴食之噬']

    # 部分技能依照消耗罪业层数获得额外加成
    def 加成倍率(self, 武器类型):
        return 1.0
        # 等下次职业加强的时候把这部分用上
        #if self.等级 == 0:
            #return 1.0
        #else:
            #return 1.07


class 技能7(主动技能):
    名称 = '傲慢之堕'
    备注 = '2层'
    所在等级 = 25
    等级上限 = 70
    学习间隔 = 3
    等级精通 = 60
    MP = [65, 630]
    data0 = [int(i) for i in [0, 6206, 7197, 8186, 9176, 10165, 11156, 12145, 13135, 14125, 15114, 16105, 17093, 18083, 19073, 20062, 21051, 22042, 23032, 24021, 25011, 26001, 26988, 27980, 28971, 29959, 30949, 31939, 32928, 33917, 34908, 35897, 36888, 37877, 38866, 39856, 40844, 41834, 42825, 43817, 44803, 45794, 46784, 47773, 48763, 49754, 50742, 51731, 52720, 53711, 54700, 55690, 56680, 57670, 58658, 59649, 60640, 61628, 62619, 63608, 64597, 65586, 66577, 67566, 68556, 69545, 70535, 71525, 72515, 73504, 74495]]
    hit0 = 1
    CD = 10.0
    TP成长 = 0.10
    TP上限 = 7


class 技能8(主动技能):
    名称 = '屠戮回旋斩'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [47, 700]
    data0 = [int(i) for i in [0, 1081, 1189, 1299, 1408, 1518, 1628, 1737, 1848, 1958, 2066, 2174, 2287, 2396, 2505, 2613, 2726, 2834, 2944, 3053, 3164, 3272, 3381, 3490, 3600, 3712, 3820, 3930, 4039, 4149, 4258, 4368, 4478, 4588, 4698, 4809, 4917, 5026, 5136, 5246, 5356, 5464, 5574, 5684, 5794, 5903, 6013, 6123, 6231, 6341, 6449, 6561, 6672, 6781, 6889, 7000, 7109, 7216, 7329, 7439, 7547, 7657, 7768, 7876, 7987, 8095, 8206, 8314, 8424, 8532, 8646]]
    hit0 = 4
    data1 = [int(i) for i in [0, 4322, 4762, 5200, 5638, 6076, 6514, 6953, 7392, 7829, 8268, 8706, 9144, 9585, 10022, 10462, 10899, 11336, 11776, 12213, 12653, 13091, 13529, 13967, 14408, 14845, 15284, 15721, 16160, 16601, 17038, 17477, 17916, 18355, 18792, 19231, 19669, 20107, 20546, 20985, 21422, 21861, 22300, 22737, 23178, 23616, 24053, 24492, 24929, 25369, 25808, 26246, 26683, 27123, 27560, 28001, 28439, 28877, 29318, 29753, 30193, 30632, 31070, 31508, 31946, 32385, 32825, 33262, 33700, 34141, 34576]]
    hit1 = 1
    CD = 12.0
    TP成长 = 0.10
    TP上限 = 7


class 技能9(主动技能):
    名称 = '怠惰之息'
    备注 = '2层'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [27, 308]
    data0 = [int(i) for i in [0, 9584, 10556, 11527, 12499, 13471, 14444, 15416, 16391, 17363, 18334, 19306, 20279, 21251, 22223, 23195, 24168, 25142, 26113, 27085, 28057, 29029, 30001, 30972, 31947, 32919, 33889, 34861, 35834, 36806, 37779, 38751, 39724, 40696, 41667, 42639, 43612, 44584, 45557, 46529, 47502, 48473, 49447, 50419, 51391, 52363, 53335, 54309, 55282, 56253, 57225, 58197, 59169, 60142, 61114, 62086, 63059, 64031, 65003, 65976, 66948, 67920, 68892, 69864, 70837, 71809, 72781, 73754, 74726, 75698, 76670]]
    hit0 = 1
    CD = 15.0
    TP成长 = 0.10
    TP上限 = 7


class 技能10(主动技能):
    名称 = '诱魔之手'
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i) for i in [0, 3465, 3818, 4169, 4520, 4873, 5225, 5576, 5928, 6280, 6632, 6983, 7335, 7686, 8038, 8389, 8741, 9092, 9444, 9798, 10148, 10501, 10852, 11203, 11555, 11907, 12257, 12610, 12961, 13312, 13664, 14017, 14370, 14720, 15072, 15424, 15775, 16126, 16479, 16829, 17181, 17534, 17885, 18236, 18589, 18941, 19293, 19644, 19995, 20348, 20699, 21050, 21403, 21753, 22105, 22457, 22808, 23161, 23513, 23863, 24216, 24568, 24918, 25271, 25622, 25973, 26325, 26677, 27028, 27382, 27733]]
    hit0 = 1
    data1 = [int(i) for i in [0, 8088, 8908, 9729, 10551, 11372, 12192, 13011, 13832, 14653, 15474, 16295, 17116, 17937, 18755, 19577, 20397, 21218, 22040, 22860, 23679, 24499, 25321, 26142, 26962, 27784, 28605, 29423, 30244, 31065, 31886, 32707, 33528, 34348, 35167, 35988, 36810, 37630, 38451, 39273, 40092, 40912, 41733, 42554, 43375, 44196, 45016, 45836, 46656, 47477, 48299, 49119, 49940, 50760, 51580, 52401, 53221, 54043, 54864, 55683, 56505, 57324, 58145, 58966, 59787, 60608, 61428, 62249, 63069, 63889, 64710]]
    hit1 = 1
    CD = 15.0
    TP成长 = 0.10
    TP上限 = 5

    MP = [105, 882]
    无色消耗 = 1


class 技能11(主动技能):
    名称 = '贪婪之刺'
    备注 = '3层'
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i*1.052) for i in [0, 1271, 1397, 1530, 1657, 1786, 1914, 2043, 2171, 2302, 2431, 2558, 2689, 2816, 2945, 3077, 3205, 3333, 3463, 3591, 3719, 3850, 3979, 4107, 4235, 4365, 4492, 4621, 4750, 4880, 5008, 5137, 5267, 5394, 5525, 5654, 5783, 5912, 6040, 6168, 6298, 6426, 6556, 6686, 6814, 6942, 7071, 7200, 7327, 7459, 7586, 7715, 7847, 7974, 8103, 8233, 8362, 8489, 8619, 8747, 8875, 9008, 9135, 9264, 9393, 9521, 9649, 9779, 9906, 10036, 10165]]
    hit0 = 9
    CD = 20.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [140, 1176]
    无色消耗 = 1

    def 装备护石(self):
        self.hit0 = 22
        self.倍率 *= 0.65*0.82
        self.CDR *= 0.85


class 技能12(主动技能):
    名称 = '杀戮战镰'
    所在等级 = 40
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i*1.055) for i in [0, 1672, 1843, 2013, 2182, 2351, 2520, 2690, 2861, 3030, 3201, 3369, 3540, 3710, 3881, 4049, 4218, 4390, 4559, 4731, 4899, 5068, 5236, 5408, 5577, 5747, 5915, 6087, 6256, 6425, 6596, 6765, 6935, 7106, 7274, 7445, 7613, 7785, 7954, 8123, 8293, 8462, 8631, 8803, 8971, 9142, 9310, 9482, 9652, 9820, 9992, 10160, 10331, 10501, 10671, 10840, 11009, 11178, 11349, 11517, 11689, 11857, 12026, 12198, 12367, 12537, 12706, 12875, 13047, 13215, 13387]]
    hit0 = 9
    CD = 20.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [180, 1512]
    无色消耗 = 1

    def 装备护石(self):
        self.hit0 = 15
        self.倍率 *= 0.68*1.16


class 技能13(主动技能):
    名称 = '愤怒之袭'
    备注 = '3层'
    所在等级 = 45
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i*1.054) for i in [0, 25928, 28557, 31188, 33818, 36451, 39080, 41708, 44341, 46971, 49600, 52232, 54863, 57492, 60123, 62753, 65383, 68015, 70644, 73274, 75907, 78536, 81167, 83796, 86428, 89058, 91687, 94318, 96949, 99579, 102209, 104839, 107470, 110101, 112732, 115360, 117994, 120623, 123252, 125883, 128514, 131144, 133774, 136404, 139035, 141665, 144296, 146926, 149557, 152186, 154818, 157448, 160078, 162710, 165339, 167968, 170601, 173230, 175859, 178491, 181122, 183752, 186382, 189012, 191644, 194274, 196904, 199534, 202165, 204795, 207426]]
    hit0 = 1
    CD = 45.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [400, 3360]
    无色消耗 = 2

    def 装备护石(self):
        self.倍率 *= 1.31


class 技能14(被动技能):
    名称 = '罪业宣告'
    所在等级 = 48
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.04+0.02 * self.等级, 5)


class 技能15(主动技能):
    名称 = '净化之花'
    所在等级 = 50
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    data0 = [int(i) for i in [0, 959, 1182, 1403, 1626, 1848, 2072, 2294, 2516, 2739, 2963, 3183, 3408, 3628, 3853, 4075, 4298, 4519, 4741, 4966, 5188, 5410, 5633, 5854, 6078, 6301, 6524, 6745, 6970, 7190, 7414, 7636, 7856, 8082, 8304, 8526, 8748, 8972, 9193, 9418, 9639, 9862, 10084, 10308, 10528, 10751, 10976, 11198, 11420, 11643, 11863, 12088, 12311, 12533, 12755, 12980, 13200, 13424, 13645, 13868, 14092, 14313, 14537, 14757, 14981, 15201, 15427, 15649, 15871, 16093, 16317]]
    hit0 = 15
    data1 = [int(i) for i in [0, 58827, 72465, 86107, 99748, 113389, 127029, 140671, 154311, 167951, 181593, 195234, 208874, 222516, 236159, 249798, 263439, 277082, 290720, 304362, 318005, 331643, 345283, 358927, 372565, 386206, 399850, 413488, 427128, 440771, 454410, 468053, 481694, 495333, 508975, 522616, 536255, 549898, 563538, 577178, 590819, 604461, 618101, 631743, 645385, 659026, 672665, 686307, 699949, 713588, 727231, 740871, 754510, 768152, 781795, 795433, 809074, 822716, 836355, 849997, 863639, 877279, 890918, 904561, 918203, 931841, 945484, 959125, 972763, 986406, 1000048]]
    hit1 = 1
    CD = 140

    MP = [1500, 3500]
    无色消耗 = 7


class 技能16(主动技能):
    名称 = '嫉妒之吻'
    备注 = '4层'
    所在等级 = 60
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i*1.051) for i in [0, 25068, 27612, 30154, 32698, 35241, 37783, 40326, 42869, 45413, 47956, 50500, 53043, 55587, 58128, 60672, 63214, 65760, 68302, 70845, 73388, 75932, 78474, 81017, 83561, 86106, 88648, 91190, 93734, 96275, 98820, 101362, 103907, 106448, 108993, 111537, 114079, 116622, 119164, 121710, 124252, 126795, 129337, 131882, 134423, 136967, 139510, 142055, 144599, 147140, 149684, 152227, 154770, 157312, 159857, 162400, 164943, 167486, 170029, 172573, 175115, 177658, 180202, 182747, 185288, 187832, 190374, 192916, 195461, 198005, 200548]]
    hit0 = 1
    CD = 30
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [400, 1120]
    无色消耗 = 7

    def 装备护石(self):
        self.倍率 *= 1.28


class 技能17(主动技能):
    名称 = '暴食之噬'
    备注 = '4层'
    所在等级 = 70
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i*1.056) for i in [0, 1057, 1165, 1272, 1380, 1486, 1595, 1701, 1809, 1916, 2025, 2130, 2238, 2346, 2452, 2560, 2668, 2777, 2883, 2990, 3099, 3204, 3313, 3420, 3528, 3634, 3742, 3850, 3957, 4063, 4172, 4278, 4384, 4493, 4599, 4708, 4814, 4923, 5029, 5136, 5243, 5351, 5459, 5566, 5672, 5781, 5888, 5995, 6103, 6212, 6318]]
    hit0 = 8
    data1 = [int(i*1.056) for i in [0, 8464, 9323, 10183, 11042, 11901, 12761, 13618, 14476, 15335, 16195, 17054, 17912, 18771, 19630, 20490, 21347, 22205, 23066, 23925, 24782, 25642, 26502, 27360, 28220, 29077, 29937, 30794, 31654, 32511, 33371, 34231, 35089, 35949, 36809, 37667, 38526, 39383, 40243, 41101, 41960, 42818, 43678, 44537, 45395, 46255, 47116, 47971, 48829, 49690, 50550]]
    hit1 = 4
    CD = 50
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [800, 1680]
    无色消耗 = 2

    def 装备护石(self):
        self.hit0 = 4
        self.power0 = 3.0
        self.power1 = 1.18


class 技能18(主动技能):
    名称 = '灵魂烙印：原罪冲击'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i*1.053) for i in [0, 12139, 13373, 14604, 15837, 17069, 18300, 19532, 20763, 21992, 23228, 24458, 25690, 26922, 28154, 29385, 30618, 31848, 33082, 34313, 35544, 36777, 38009, 39241, 40471, 41701, 42933, 44168, 45399, 46631, 47862, 49094, 50324, 51556, 52789, 54021, 55253, 56485, 57717, 58947, 60180, 61411, 62644, 63876, 65105, 66340, 67571, 68800, 70032, 71264, 72496, 73730, 74962, 76193, 77423, 78655, 79887, 81119, 82352, 83583, 84816, 86048, 87276, 88509, 89741, 90973, 92203, 93436, 94670, 95902, 97132]]
    hit0 = 1
    data1 = [int(i*1.053) for i in [0, 48564, 53492, 58419, 63347, 68274, 73201, 78127, 83055, 87982, 92911, 97834, 102764, 107691, 112618, 117545, 122472, 127397, 132326, 137254, 142178, 147106, 152033, 156959, 161887, 166813, 171741, 176668, 181596, 186523, 191449, 196376, 201305, 206231, 211157, 216084, 221011, 225938, 230866, 235791, 240720, 245647, 250574, 255500, 260428, 265354, 270282, 275210, 280138, 285063, 289991, 294918, 299843, 304771, 309697, 314626, 319552, 324481, 329405, 334334, 339260, 344189, 349113, 354043, 358968, 363897, 368823, 373749, 378676, 383605, 388532]]
    hit1 = 1
    CD = 40
    是否有护石 = 1

    MP = [580, 4500]
    无色消耗 = 3

    def 装备护石(self):
        self.倍率 = 1.29
        self.CDR *= 0.9


class 技能19(主动技能):
    名称 = '智慧起源：原罪结晶'
    是否主动 = 0
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40
    关联技能 = ['所有']

    data0 = [int(i*1.052) for i in [0, 5013, 5812, 6613, 7412, 8210, 9010, 9808, 10609, 11408, 12207, 13007, 13806, 14605, 15405, 16203, 17004, 17803, 18602, 19401, 20201, 21000, 21799, 22598, 23398, 24198, 24996, 25796, 26594, 27395, 28194, 28993, 29793, 30592, 31391, 32190, 32989, 33789, 34589, 35388, 36187, 36985, 37786, 38585, 39384, 40184, 40984, 41783, 42581, 43380, 44181, 44980, 45779, 46579, 47377, 48177, 48976, 49775, 50575, 51375, 52174, 52974, 53772, 54572, 55371, 56170, 56970, 57770, 58569, 59367, 60167]]
    hit0 = 1
    CD = 2.0


    def 等效CD(self, **argv):
        return 2.0

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.23 + 0.02 * self.等级, 5)


class 技能20(主动技能):
    名称 = '肋骨重塑：原罪战矛'
    所在等级 = 80
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i*1.051) for i in [0, 38093, 41957, 45821, 49685, 53549, 57415, 61279, 65144, 69008, 72874, 76738, 80601, 84467, 88331, 92195, 96060, 99924, 103790, 107653, 111516, 115382, 119246, 123113, 126976, 130842, 134706, 138569, 142434, 146298, 150163, 154028, 157891, 161757, 165621, 169485, 173348, 177215, 181080, 184944, 188808, 192673, 196538, 200401, 204265, 208130, 211994, 215860, 219723, 223590, 227452, 231317, 235182, 239046, 242912, 246776, 250639, 254505, 258368, 262234, 266097, 269962, 273827, 277691, 281558, 285421, 289285, 293150, 297013, 300879, 304743]]
    hit0 = 1
    data1 = [int(i*1.051) for i in [0, 12698, 13986, 15272, 16560, 17849, 19138, 20426, 21715, 23002, 24290, 25579, 26865, 28156, 29444, 30732, 32019, 33308, 34595, 35883, 37171, 38461, 39749, 41036, 42325, 43614, 44901, 46190, 47479, 48765, 50054, 51342, 52630, 53918, 55206, 56495, 57783, 59072, 60361, 61646, 62935, 64224, 65512, 66801, 68088, 69376, 70665, 71953, 73240, 74530, 75818, 77107, 78392, 79681, 80970, 82257, 83546, 84836, 86122, 87411, 88699, 89987, 91276, 92562, 93853, 95140, 96428, 97717, 99003, 100292, 101581]]
    hit1 = 3
    power1 = 1.21 #最多可消耗7层原罪；等下次职业平衡后删除
    CD = 45.0
    是否有护石 = 1

    MP = [800, 6000]
    无色消耗 = 5

    def 装备护石(self):
        self.power1 *= 1.54


class 技能21(主动技能):
    名称 = '失乐园'
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    data0 = [int(i) for i in [0, 26408, 32534, 38657, 44781, 50906, 57030, 63156, 69277, 75402, 81528, 87653, 93775, 99900, 106025, 112147, 118273, 124397, 130521, 136645, 142769, 148895, 155018, 161142, 167267, 173391, 179513, 185638, 191762, 197888, 204011, 210135, 216259, 222383, 228506, 234631, 240757, 246879, 253005, 259128, 265251, 271377, 277501, 283624, 289748, 295872, 301997, 308123, 314245, 320369, 326494, 332617, 338740, 344867, 350991, 357115, 363238, 369362, 375490, 381613, 387737, 393862, 399984, 406108, 412234, 418359, 424480, 430606, 436730, 442853, 448978]]
    hit0 = 1
    data1 = [int(i) for i in [0, 52821, 65069, 77318, 89566, 101814, 114063, 126311, 138558, 150807, 163056, 175302, 187553, 199801, 212049, 224297, 236544, 248794, 261041, 273290, 285537, 297789, 310035, 322285, 334534, 346780, 359029, 371278, 383527, 395773, 408024, 420271, 432519, 444768, 457017, 469264, 481512, 493761, 506008, 518258, 530505, 542754, 555001, 567250, 579499, 591747, 603997, 616244, 628494, 640740, 652990, 665238, 677485, 689733, 701983, 714232, 726478, 738729, 750976, 763224, 775472, 787722, 799969, 812217, 824465, 836714, 848963, 861210, 873460, 885707, 897957]]
    hit1 = 1
    data2 = [int(i) for i in [0, 96837, 119292, 141749, 164204, 186658, 209115, 231569, 254023, 276481, 298936, 321391, 343845, 366301, 388757, 411211, 433668, 456123, 478578, 501032, 523489, 545945, 568399, 590856, 613310, 635764, 658220, 680677, 703132, 725586, 748042, 770498, 792952, 815407, 837864, 860318, 882773, 905230, 927685, 950138, 972597, 995051, 1017504, 1039959, 1062416, 1084871, 1107325, 1129780, 1152237, 1174692, 1197148, 1219603, 1242057, 1264512, 1286968, 1309425, 1331879, 1354334, 1376790, 1399244, 1421700, 1444156, 1466612, 1489066, 1511521, 1533978, 1556433, 1578889, 1601343, 1623798, 1646253]]
    hit2 = 1
    CD = 180.0

    MP = [1500, 5000]
    无色消耗 = 10


class 技能22(主动技能):
    名称 = '至高之刑'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i) for i in [0, 15203, 16744, 18286, 19828, 21371, 22914, 24456, 25999, 27541, 29083, 30625, 32167, 33710, 35253, 36796, 38336, 39878, 41421, 42964, 44507, 46048, 47589, 49132, 50675, 52218, 53760, 55302, 56845, 58386, 59929, 61471, 63014, 64556, 66099, 67641, 69182, 70725, 72268, 73810, 75352, 76895, 78437, 79979, 81521, 83063, 84606, 86149, 87692, 89233, 90774, 92317, 93860, 95403, 96945, 98487, 100028, 101571, 103114, 104656, 106198, 107741, 109284, 110825, 112367, 113910, 115453, 116996, 118537, 120079, 121621]]
    hit0 = 6
    data1 = [int(i) for i in [0, 60810, 66979, 73150, 79318, 85488, 91656, 97825, 103995, 110164, 116335, 122503, 128672, 134841, 141010, 147180, 153350, 159518, 165688, 171855, 178026, 184195, 190363, 196534, 202703, 208873, 215040, 221210, 227380, 233548, 239719, 245888, 252056, 258226, 264395, 270564, 276734, 282904, 289073, 295240, 301411, 307579, 313749, 319919, 326088, 332256, 338426, 344596, 350764, 356934, 363104, 369272, 375441, 381611, 387779, 393949, 400119, 406288, 412456, 418626, 424795, 430964, 437135, 443303, 449472, 455641, 461810, 467980, 474149, 480320, 486488]]
    hit1 = 1
    CD = 60

    MP = [1066, 8000]
    无色消耗 = 7


class 技能23(被动技能):
    名称 = '原罪之初'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能24(主动技能):
    名称 = '原罪之翼·永息'
    所在等级 = 100
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    data0 = [int(i*1.050) for i in [0, 463284, 570713, 678140, 785569, 892998, 1000426, 1107854, 1215282, 1322712, 1430140, 1537569, 1644996, 1752425, 1859854, 1967282, 2074711, 2182138, 2289567, 2396995, 2504424, 2611851, 2719280, 2826709, 2934137, 3041566, 3148993, 3256422, 3363850, 3471280, 3578706, 3686136, 3793564, 3900993, 4008422, 4115849, 4223278, 4330706, 4438135, 4545562, 4652991]]
    hit0 = 1
    CD = 290

    MP = [4028, 8056]
    无色消耗 = 15


class classChange(Character):
    def __init__(self):
        self.实际名称 = 'mistress'
        self.名称 = '神启·诱魔者'
        self.角色 = '圣职者(女)'
        self.角色类型 = '输出'
        self.职业 = '诱魔者'
        # 用来筛CP武器的
        self.转职 = '诱魔者'
        self.武器选项 = ['镰刀']
        self.输出类型选项 = ['魔法百分比']
        self.防具精通属性 = ['智力']
        self.类型 = '魔法百分比'
        self.武器类型 = ['镰刀']
        self.防具类型 = '重甲'
        技能列表 = []
        技能序号 = {}
        i = 0
        while i >= 0:
            try:
                tem = eval('技能'+str(i)+'()')
                tem.基础等级计算()
                技能序号[tem.名称] = i
                技能列表.append(tem)
                i += 1
            except:
                i = -1
        self.技能栏 = 技能列表
        self.技能序号 = 技能序号
        self.buff = 1.875

        super().__init__()